home *** CD-ROM | disk | FTP | other *** search
/ Just Call Me Internet / Just Call Me Internet.iso / prog / atari / m2 / cat3src / magic / d / magictyp.d < prev    next >
Text File  |  1997-10-26  |  17KB  |  331 lines

  1. (*----------------------------------------------------------------------*
  2.  *                                                                      *
  3.  *         MAGIC   Modula's  All purpose  GEM  Interface  Cadre         *
  4.  *                 ÿ         ÿ            ÿ    ÿ          ÿ             *
  5.  *----------------------------------------------------------------------*
  6.  * Version 3.30  02.02.1992     (C)90/91/92 by Peter Hellinger Software *
  7.  *----------------------------------------------------------------------*
  8.  *            Dieses Modul ist urheberrechtlich geschtzt.              *
  9.  *                                                                      *
  10.  * Die Ver”ffentlichung des Quelltextes oder Teilen daraus in schrift-  *
  11.  * licher Form, insbesondere in Zeitschriften, sowie die Verbreitung    *
  12.  * ber Public-Domain-H„ndler bedarf der ausdrcklichen schriftlichen   *
  13.  * Genehmigung des Autors!                                              *
  14.  *                                                                      *
  15.  * Der Autor gibt hiermit die ausdrckliche Erlaubnis, das Modul jeder- *
  16.  * zeit auch im Quelltext weiterzugegeben, sofern dessen Text und ins-  *
  17.  * besondere dieser Urheberrechts-Vermerk nicht ver„ndert wird, und     *
  18.  * durch die Weitergabe kein finanzieller Nutzen entsteht. Der Autor    *
  19.  * beh„lt sich das Recht vor, diese Erlaubnis jederzeit u. ohne Angaben *
  20.  * von Grnden zu widerrufen.                                           *
  21.  *----------------------------------------------------------------------*)
  22.  
  23. (*----------------------------------------------------------------------*
  24.  * MagicTypes   Typdeklarationen nach Profibuch                         *
  25.  *----------------------------------------------------------------------*)
  26.  
  27. DEFINITION MODULE MagicTypes;
  28.  
  29. FROM MagicSys   IMPORT  Nil, Null, Bit0, Bit1, Bit2, Bit3, Bit4, Bit5, Bit6,
  30.                         Bit7, Bit8, Bit9, Bit10, Bit11, Bit12, Bit13, Bit14,
  31.                         Bit15, LOC, Byte, ByteSet, sWORD, sINTEGER, sCARDINAL,
  32.                         sBITSET, lINTEGER, lCARDINAL, lWORD, lBITSET;
  33.  
  34.  
  35.  
  36.  
  37.  
  38. IMPORT SYSTEM;
  39.  
  40. TYPE    PtrPD =         POINTER TO PD;
  41.         PD =            RECORD
  42.                          pLowtpa:       SYSTEM.ADDRESS;
  43.                          pHitpa:        SYSTEM.ADDRESS;
  44.                          pTbase:        SYSTEM.ADDRESS;
  45.                          pTlen:         lCARDINAL;
  46.                          pDbase:        SYSTEM.ADDRESS;
  47.                          pDlen:         lCARDINAL;
  48.                          pBbase:        SYSTEM.ADDRESS;
  49.                          pBlen:         lCARDINAL;
  50.                          pDta:          SYSTEM.ADDRESS;
  51.                          pParent:       PtrPD;
  52.                          res1:          SYSTEM.ADDRESS;
  53.                          pEnv:          SYSTEM.ADDRESS;
  54.                          devx:          ARRAY [0..5] OF Byte;
  55.                          res2:          Byte;
  56.                          defdrv:        Byte;
  57.                          pUndef:        ARRAY [0..17] OF lCARDINAL;
  58.                          pCmdlin:       ARRAY [0..126] OF CHAR;
  59.                         END;
  60.  
  61. TYPE    BITBLK =        RECORD
  62.                          bWd:           sINTEGER;
  63.                          bHt:           sINTEGER;
  64.                          planeCt:       sINTEGER;
  65.                          fgCol:         sINTEGER;
  66.                          bgCol:         sINTEGER;
  67.                          opTab:         ARRAY [0..3] OF Byte;
  68.                          sXmin:         sINTEGER;
  69.                          sYmin:         sINTEGER;
  70.                          sForm:         SYSTEM.ADDRESS;
  71.                          sNxwd:         sINTEGER;
  72.                          sNxln:         sINTEGER;
  73.                          sNxpl:         sINTEGER;
  74.                          dXmin:         sINTEGER;
  75.                          dYmin:         sINTEGER;
  76.                          dForm:         SYSTEM.ADDRESS;
  77.                          dNxwd:         sINTEGER;
  78.                          dNxln:         sINTEGER;
  79.                          dNxpl:         sINTEGER;
  80.                          pAddr:         SYSTEM.ADDRESS;
  81.                          pNxln:         sINTEGER;
  82.                          pNxpl:         sINTEGER;
  83.                          pMask:         sINTEGER;
  84.                          filler:        ARRAY [0..23] OF Byte;
  85.                         END;
  86.  
  87. TYPE    PtrFONTHDR =    POINTER TO FONTHDR;
  88.         FONTHDR =       RECORD
  89.                          fontId:        sINTEGER;
  90.                          point:         sINTEGER;
  91.                          name:          ARRAY [0..31] OF CHAR;
  92.                          firstAde:      sCARDINAL;
  93.                          lastAde:       sCARDINAL;
  94.                          top:           sCARDINAL;
  95.                          ascent:        sCARDINAL;
  96.                          half:          sCARDINAL;
  97.                          descent:       sCARDINAL;
  98.                          bottom:        sCARDINAL;
  99.                          maxCharwidth:  sCARDINAL;
  100.                          maxCellwidth:  sCARDINAL;
  101.                          leftOffset:    sCARDINAL;
  102.                          rightOffset:   sCARDINAL;
  103.                          thicken:       sCARDINAL;
  104.                          ulSize:        sCARDINAL;
  105.                          lighten:       sCARDINAL;
  106.                          skew:          sCARDINAL;
  107.                          flags:         sBITSET;
  108.                          horTable:      POINTER TO ARRAY [0..255] OF sCARDINAL;
  109.                          offTable:      POINTER TO ARRAY [0..255] OF sCARDINAL;
  110.                          datTable:      SYSTEM.ADDRESS;
  111.                          formWidth:     sCARDINAL;
  112.                          formHeight:    sCARDINAL;
  113.                          nextFont:      PtrFONTHDR;
  114.                         END;
  115.  
  116.  
  117. TYPE    IMGHEADER =     RECORD
  118.                          imVersion:     sINTEGER;
  119.                          imHeadlength:  sINTEGER;
  120.                          imNplanes:     sINTEGER;
  121.                          imPatlen:      sINTEGER;
  122.                          imPixwidth:    sINTEGER;
  123.                          imPixheight:   sINTEGER;
  124.                          imScanwidth:   sINTEGER;
  125.                          imNlines:      sINTEGER;
  126.                         END;
  127.  
  128. TYPE    PtrLINEA =      POINTER TO LINEA;
  129.         LINEA =         RECORD
  130.                          PLANES:        sINTEGER;
  131.                          WIDTH:         sINTEGER;
  132.                          CONTRL:        POINTER TO ARRAY [0.. 11] OF sINTEGER;
  133.                          INTIN:         POINTER TO ARRAY [0..255] OF sINTEGER;
  134.                          PTSIN:         POINTER TO ARRAY [0..255] OF sINTEGER;
  135.                          INTOUT:        POINTER TO ARRAY [0..255] OF sINTEGER;
  136.                          PTSOUT:        POINTER TO ARRAY [0..255] OF sINTEGER;
  137.                          COLBIT0:       sINTEGER;
  138.                          COLBIT1:       sINTEGER;
  139.                          COLBIT2:       sINTEGER;
  140.                          COLBIT3:       sINTEGER;
  141.                          LSTLIN:        sINTEGER;
  142.                          LNMASK:        sBITSET;
  143.                          WMODE:         sINTEGER;
  144.                          X1:            sINTEGER;
  145.                          Y1:            sINTEGER;
  146.                          X2:            sINTEGER;
  147.                          Y2:            sINTEGER;
  148.                          PATPTR:        SYSTEM.ADDRESS;
  149.                          PATMSK:        sBITSET;
  150.                          MFILL:         sINTEGER;
  151.                          CLIP:          sINTEGER;
  152.                          XMINCL:        sINTEGER;
  153.                          YMINCL:        sINTEGER;
  154.                          XMAXCL:        sINTEGER;
  155.                          YMAXCL:        sINTEGER;
  156.                          XDDA:          sINTEGER;
  157.                          DDAINC:        sINTEGER;
  158.                          SCALDIR:       sINTEGER;
  159.                          MONO:          sINTEGER;
  160.                          SOURCEX:       sINTEGER;
  161.                          SOURCEY:       sINTEGER;
  162.                          DESTX:         sINTEGER;
  163.                          DESTY:         sINTEGER;
  164.                          DELX:          sINTEGER;
  165.                          DELY:          sINTEGER;
  166.                          FBASE:         PtrFONTHDR;
  167.                          FWIDTH:        sINTEGER;
  168.                          STYLE:         sBITSET;
  169.                          LITEMASK:      sBITSET;
  170.                          SKEWMASK:      sBITSET;
  171.                          WEIGHT:        sINTEGER;
  172.                          ROFF:          sINTEGER;
  173.                          LOFF:          sINTEGER;
  174.                          SCALE:         sINTEGER;
  175.                          CHUP:          sINTEGER;
  176.                          TEXTFG:        sINTEGER;
  177.                          SCRTCHP:       SYSTEM.ADDRESS;
  178.                          SCRTP2:        sINTEGER;
  179.                          TEXTBG:        sINTEGER;
  180.                          COPYTRAN:      sINTEGER;
  181.                          SEEDABORT:     SYSTEM.ADDRESS;
  182.                         END;
  183.  
  184. TYPE    PtrLINEAFonts = POINTER TO ARRAY [0..2] OF PtrFONTHDR; 
  185.  
  186. TYPE    METAHDR =       RECORD
  187.                          mfHeader:      sINTEGER;
  188.                          mfHlenght:     sINTEGER;
  189.                          mfVersion:     sINTEGER;
  190.                          mfNdcrcfl:     sINTEGER;
  191.                          mfExtents:     ARRAY [0..3] OF sINTEGER;
  192.                          mfPagesz:      ARRAY [0..1] OF sINTEGER;
  193.                          mfCoords:      ARRAY [0..3] OF sINTEGER;
  194.                          mfImgflag:     sINTEGER;
  195.                          mfResvd:       ARRAY [0..8] OF sINTEGER;
  196.                         END;
  197.  
  198. TYPE    MFORM =         RECORD
  199.                          mfXhot:        sINTEGER;
  200.                          mfYhot:        sINTEGER;
  201.                          mfNplanes:     sINTEGER;
  202.                          mfFg:          sINTEGER;
  203.                          mfBg:          sINTEGER;
  204.                          mfMask:        ARRAY [0..15] OF sCARDINAL;
  205.                          mfData:        ARRAY [0..15] OF sCARDINAL;
  206.                         END;
  207.  
  208. TYPE    RSHDR =         RECORD
  209.                          rshVrsn:       sCARDINAL;
  210.                          rshObject:     sCARDINAL;
  211.                          rshTedinfo:    sCARDINAL;
  212.                          rshIconblk:    sCARDINAL;
  213.                          rshBitblk:     sCARDINAL;
  214.                          rshFrstr:      sCARDINAL;
  215.                          rshString:     sCARDINAL;
  216.                          rshImdata:     sCARDINAL;
  217.                          rshFrimg:      sCARDINAL;
  218.                          rshTrindex:    sCARDINAL;
  219.                          rshNobs:       sCARDINAL;
  220.                          rshNtree:      sCARDINAL;
  221.                          rshNted:       sCARDINAL;
  222.                          rshNib:        sCARDINAL;
  223.                          rshNbb:        sCARDINAL;
  224.                          rshNstring:    sCARDINAL;
  225.                          rshNimages:    sCARDINAL;
  226.                          rshRssize:     sCARDINAL;
  227.                         END;
  228.  
  229. TYPE    SDB =           RECORD
  230.                          xhot:          sINTEGER;
  231.                          yhot:          sINTEGER;
  232.                          form:          sINTEGER;
  233.                          bgcol:         sINTEGER;
  234.                          fgcol:         sINTEGER;
  235.                          image:         ARRAY [0..31] OF sINTEGER;
  236.                         END;
  237.  
  238. TYPE    PtrSYSHDR =     POINTER TO SYSHDR;
  239.         SYSHDR =        RECORD
  240.                          osEntry:       sCARDINAL;
  241.                          osVersion:     sCARDINAL;
  242.                          osStart:       SYSTEM.ADDRESS;
  243.                          osBase:        SYSTEM.ADDRESS;
  244.                          osMembot:      SYSTEM.ADDRESS;
  245.                          osShell:       SYSTEM.ADDRESS;
  246.                          osMagic:       SYSTEM.ADDRESS;
  247.                          osGendat:      lCARDINAL;
  248.                          osPalmode:     sCARDINAL;
  249.                          osGendatg:     sCARDINAL;
  250.                          osCountry:     lCARDINAL;
  251.                          root:          SYSTEM.ADDRESS;
  252.                          kbshift:       SYSTEM.ADDRESS;
  253.                          run:           SYSTEM.ADDRESS;
  254.                         END;
  255.  
  256. TYPE    PtrVDIESC =     POINTER TO VDIESC;
  257.         VDIESC =        RECORD
  258.                          RESERVED6:     lCARDINAL;
  259.                          CURFONT:       POINTER TO FONTHDR;
  260.                          RESERVED5:     ARRAY [0..23] OF sINTEGER;
  261.                          MPOSHX:        sINTEGER;
  262.                          MPOSHY:        sINTEGER;
  263.                          MPLANES:       sINTEGER;
  264.                          MCDBBG:        sINTEGER;
  265.                          MCDBFG:        sINTEGER;
  266.                          MASKFORM:      ARRAY [0..31] OF sINTEGER;
  267.                          INQTAB:        ARRAY [0..44] OF sINTEGER;
  268.                          DEVTAB:        ARRAY [0..44] OF sINTEGER;
  269.                          GCURX:         sINTEGER;
  270.                          GCURY:         sINTEGER;
  271.                          MHIDCT:        sINTEGER;
  272.                          MOUSEBT:       sINTEGER;
  273.                          REQCOL:        ARRAY [0..47] OF sINTEGER;
  274.                          SIZTAB:        ARRAY [0..14] OF sINTEGER;
  275.                          RESERVED4:     ARRAY [0..1] OF sINTEGER;
  276.                          CURWORK:       SYSTEM.ADDRESS;
  277.                          DEFFONT:       POINTER TO FONTHDR;
  278.                          FONTRING:      ARRAY [0..3] OF SYSTEM.ADDRESS;
  279.                          FONTCOUNT:     sINTEGER;
  280.                          RESERVED3:     ARRAY [0..44] OF sINTEGER;
  281.                          CURMSSTAT:     Byte;
  282.                          RESERVED2:     Byte;
  283.                          VHIDCNT:       sINTEGER;
  284.                          CURX:          sINTEGER;
  285.                          CURY:          sINTEGER;
  286.                          CURFLAG:       Byte;
  287.                          MOUSEFLAG:     Byte;
  288.                          RESERVED1:     lCARDINAL;
  289.                          VSAVXY:        ARRAY [0..1] OF sINTEGER;
  290.                          SAVELEN:       sINTEGER;
  291.                          SAVEADDR:      SYSTEM.ADDRESS;
  292.                          SAVESTAT:      sBITSET;
  293.                          SAVEAREA:      ARRAY [0..63] OF lCARDINAL;
  294.                          USERTIM:       SYSTEM.ADDRESS;
  295.                          NEXTTIM:       SYSTEM.ADDRESS;
  296.                          USERBUT:       SYSTEM.ADDRESS;
  297.                          USERCUR:       SYSTEM.ADDRESS;
  298.                          USERMOT:       SYSTEM.ADDRESS;
  299.                          VCELHT:        sINTEGER;
  300.                          VCELMX:        sINTEGER;
  301.                          VCELMY:        sINTEGER;
  302.                          VCELWR:        sINTEGER;
  303.                          VCOLBG:        sINTEGER;
  304.                          VCOLFG:        sINTEGER;
  305.                          VCURAD:        SYSTEM.ADDRESS;
  306.                          VCUROF:        sINTEGER;
  307.                          VCURXY:        ARRAY [0..1] OF sINTEGER;
  308.                          VPERIOD:       Byte;
  309.                          VCURCT:        Byte;
  310.                          VFNTAD:        SYSTEM.ADDRESS;
  311.                          VFNTND:        sINTEGER;
  312.                          VFNTST:        sINTEGER;
  313.                          VFNTWD:        sINTEGER;
  314.                          VREZHZ:        sINTEGER;
  315.                          VOFFAD:        SYSTEM.ADDRESS;
  316.                          RESERVED:      sINTEGER;
  317.                          VREZVT:        sINTEGER;
  318.                          BYTESLIN:      sINTEGER;
  319.                         END;
  320.  
  321. PROCEDURE LineA (): PtrLINEA;
  322. (* Liefert einen Zeiger auf die LineA-Variablen *)
  323.  
  324. PROCEDURE LineAFonts (): PtrLINEAFonts;
  325. (* Liefert einen Zeiger auf die LineA-Fonts *)
  326.  
  327. PROCEDURE Vdiesc (): PtrVDIESC;
  328. (* Liefert einen Zeiger auf die negativen LineA-Variablen *)
  329.  
  330. END MagicTypes.
  331.